package main

import (
	"fmt"
	"time"
)

func main() {
	now := time.Now()
	fmt.Println(now)

	year := now.Year()
	month := now.Month()
	day := now.Day()
	hour := now.Hour()
	minute := now.Minute()
	second := now.Second()
	s := time.Second

	fmt.Println(year)
	fmt.Println(now, year, month, day, hour, minute, second, s)

	// 时间戳：从1970.1.1到现在的一个秒数，也就是计算1970年到目前时间的总共秒数
	timeStamp1 := now.Unix()
	timeStamp2 := now.UnixNano()
	fmt.Println(timeStamp1, timeStamp2)

	// 将时间戳转换为具体的时间格式，也就是将具体时间秒数转换为目前大致的时间
	// 1645165263 + 3600 = 1645168863
	t := time.Unix(1645168863, 0)
	fmt.Println(t)

	// 时间间隔
	n := 5 // type int
	// time.Sleep(n * time.Second) // 这样写不对。因为n是int类型，不是Duration类型，需要强制转换
	time.Sleep(time.Duration(n) * time.Second) // 间隔5秒钟再执行该语句
	fmt.Println("over")
}
